package com.ten.course.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ten.common.core.entity.EduCourse;
import com.ten.common.core.entity.TbMember;
import com.ten.common.core.vo.Result;
import com.ten.course.vo.*;

import java.util.List;


/**
 * @author ：张成（3092211427@qq.com）
 * @date ：Created in 2022/12/718:14
 * @description：
 * @modified By：
 * @version:
 */
public interface CourseListService {
    Result<Page<EduCourse>> findCourse(Integer pageCurrent, Integer pageSize, CourseCheckVo courseCheckVo);

    Result changeStatus(ListChangeStatusVo listChangeStatusVo);

    Result updateCourse(CourseChangeVo courseChangeVo);

    Result<IPage<EduCourse>> getCourseByTeacherPhone(Integer pageCurrent, Integer pageSize, String teacherMobile, String checkStatus);

    Result updateCourseSubject(UpdateCourseSubjectVo updateCourseSubjectVo);

    Result<List<EduCourse>> selectByCourseId(String courseId);

    Result<Boolean> updateIsAdd(EduCourse eduCourse);

    Result<Page<EduCourse>> fontFindCourse(Integer pageCurrent, Integer pageSize, FontFindCourseVo fontFindCourseVo);

    Result<CourseTeacherVo> queryAllCoursesAndTeacherName(String id);

    Result queryAllById(String courseId, String mobile);

    Result<TbMember> queryMemberStatus(String courseId, String huiYuanId);

    Result<Page<EduCourse>> findCourseByTeacherId(Integer pageCurrent, Integer pageSize, CourseGuanZhuVo courseGuanZhuVo);

    Result<List<EduCourse>> getCoursesByConditions();

    Result<Page<EduCourse>> getAllDetail(Integer pageCurrent, Integer pageSize ,CourseCheckVo courseCheckVo);
}